class Solution:
def search(self, nums: List[int], target: int) -> int:
start = 0
end = len(nums) - 1
if len(nums) == 0:
return -1
value = -1
while (start <= end):
mid = (start + end) // 2
if mid > 0 and nums[mid] < nums[mid - 1]:
value = mid
break
if nums[start] <= nums[mid] > nums[end]:
start = mid + 1
else:
end = mid - 1
value = start
def binarySearch(start, end):
while start<=end:
mid = (start+end)//2
if nums[mid] == target:
return mid
elif nums[mid] > target:
end = mid-1
else:
start = mid+1
return -1
x = [binarySearch(value, len(nums) -1), binarySearch(0, value-1)]
print(max(x))
return max(x)
2. Add Two Numbers | 515. Find Largest Value in Each Tree Row |
345. Reverse Vowels of a String | 628. Maximum Product of Three Numbers |
1526A - Mean Inequality | 1526B - I Hate 1111 |
1881. Maximum Value after Insertion | 237. Delete Node in a Linked List |
27. Remove Element | 39. Combination Sum |
378. Kth Smallest Element in a Sorted Matrix | 162. Find Peak Element |
1529A - Eshag Loves Big Arrays | 19. Remove Nth Node From End of List |
925. Long Pressed Name | 1051. Height Checker |
695. Max Area of Island | 402. Remove K Digits |
97. Interleaving String | 543. Diameter of Binary Tree |
124. Binary Tree Maximum Path Sum | 1465. Maximum Area of a Piece of Cake After Horizontal and Vertical Cuts |
501A - Contest | 160A- Twins |
752. Open the Lock | 1535A - Fair Playoff |
1538F - Interesting Function | 1920. Build Array from Permutation |
494. Target Sum | 797. All Paths From Source to Target |